package Service.Teacher;

import Entity.Grade.Grading;
import Entity.Grade.GroupGrade;
import Entity.MyTableData;

public interface GradeService {

    /**
     * @param queryKey 论文标题 查询的关键字  为%%查询所有
     * @param offset   页面限制的数据条数大小
     * @param limit    第几条开始
     * @param NO       查询编号
     * @param type     1是学生查询查询 ； 2 是老师查询
     * @return Grading列表
     */
    MyTableData getGradingByNO(String queryKey, Integer offset, Integer limit, String NO, Integer type);


    /**
     * 评阅老师评分
     *
     * @param grading 要插入的对象
     * @return true 成功   false 失败
     */
    Boolean addGrading(Grading grading);

    /**
     * @param queryKey 论文标题 查询的关键字  为%%查询所有
     * @param offset   页面限制的数据条数大小
     * @param limit    第几条开始
     * @param NO       查询编号
     * @param type     1是学生查询查询 ； 2 是老师查询
     * @return Grading列表
     */
    MyTableData getGroupGrade(String queryKey, Integer offset, Integer limit, String NO, Integer type);


    /**
     * 答辩小组评分
     *
     * @param groupGrade 答辩小组的评分数据
     * @return true 成功   false 失败
     */
    boolean addGroupGrade(GroupGrade groupGrade);


    /**
     * 查询所有的最终成绩
     *
     * @param queryKey 标题 查询关键字
     * @param offset   偏移量
     * @param limit    限制的条数
     * @return
     */
    MyTableData getAllFinalGrade(String queryKey, Integer offset, Integer limit);
}
